- 5 minutes to read

Configuring the Nodinite Mule ESB Log Agent

Unlock the full potential of your integration landscape by configuring the Nodinite Mule ESB Logging Agent. This guide empowers you to seamlessly transfer log4j content to Nodinite, enabling advanced monitoring, troubleshooting, and business insight.

You can tailor the Log Agent's behavior by editing the Settings.json file in the installation folder. For best results, open it with an elevated Notepad or Notepad++.

General

The General section defines global settings that shape the agent's core behavior and identity.

Property Description Value Example Comment
Environment Name of the environment where this agent runs Test, Prod Use clear, descriptive names for easy identification
Debug Enable detailed diagnostics true or false Set to false in production for optimal performance
Version Internal configuration file version 1.2.3.4 READ ONLY – Do not change manually
CultureInfo Output formatting for dates, etc. SV-SE, EN-us Currently not implemented

Folders

The Folders section lets you specify where the Log Agent should search for log files. You can monitor local folders or SMB file shares, making it easy to centralize log collection across your enterprise.

Folders is an array of Folder objects. Each Folder points to a root directory (local or network) where the Log Agent scans for log files containing JSON Log Events.

Property Description Value Example Comment
Folder Path to search for log files \\server\share Use double backslashes in JSON notation
Filter File pattern to match *.log, *.json Supports wildcards
IncludeChildFolders Search subfolders for JSON Log Event true or false
ExcludeChildFolders Array of subfolders to exclude (full path required) Only applies if IncludeChildFolders is true
Log See Log for delivery settings

Environments

Environments is a collection of one or more Cloudhub environments, allowing you to manage multiple integration landscapes from a single configuration.

Property Description Value Example Comment
EnvironmentName Name of the Cloudhub environment Prod/Test/QA
EnvironmentId Unique Cloudhub environment ID (GUID) 1A395ED7-5CC5-4B4A-9A09-...
Username Username for Cloudhub access user
Password Password for Cloudhub access password
Log See Log for settings

Log

The Log section controls how and where log data is delivered to Nodinite. Fine-tune these settings to optimize performance, security, and traceability.

Property Description Value Example Comment
Enabled Enable or disable logging true or false Temporarily disable without removing configuration
LogAPI Address of the Nodinite Log API https://localhost/Nodinite/... Update to match your Nodinite installation
LogAgentId Unique identifier for this Log Agent 42 Helps trace log origins
PollingInterval How often to check for new logs (seconds) 30 Adjust for your environment's needs
ReplaceRules See Replace Rules Dynamic endpoint management

Replace Rules

Tip: Replace Rules help you standardize dynamic endpoint names and URIs, making your monitoring and analytics more meaningful.

ReplaceRules is an array of rules that update Endpoints with a new Name or URI, especially useful for dynamic values like IDs.

Property Description Value Example Comment
Name Rule name for easy identification
ReplaceName Whether to update the endpoint name true (default)
ReplaceUri Whether to update the endpoint URI true (default)
Pattern RegEx pattern to match values to replace /([0-9]{4,})$ Only the first group is replaced
Group1Value Replacement value for the matched group {customerId}

Example:
The original URI:

https://www.nodinite.com/int042/getCustomer/12345

With ReplaceRules, the logged URI becomes:

https://www.nodinite.com/int042/getCustomer/{CustomerId}

If you did not configure ReplaceRules before deploying, you may end up with a large number of Endpoints. Contact our Support for help optimizing your configuration.


{
  "Environment": "Test",
  "Debug": true,
  "Version": "1.2",
  "CultureInfo": "sv-SE",
  "Folders": [
    {
      "Folder": "C:\\Mule\\logs\\IMLog",
      "IncludeChildFolders": false,
      "Filter": "*.log",
      "ExcludeChildFolders": [
        {
          "Name": "C:\\Temp\\MuleLogs\\IMLog\\NotMe"
        }
      ],
      "Log": {
        "Enabled": true,
        "PollingInterval": 60,
        "LogAPI": "http://localhost/Nodinite/LogAPI/",       
        "LogAgentId": 42,
        "ReplaceRules": [
          {
            "Name": "Fix Endpoint name to change customer Id to {customerId}",
            "ReplaceName": true,
            "ReplaceUri": true,
            "Pattern": "/([0-9]{4,})$",
            "Group1Value": "{customerId}"
          }
        ]
      }
    }
  ],
  "Environments": [
    {
      "EnvironmentName": "Test",
      "EnvironmentId": "1A395ED7-5CC5-4B4A-9A09-87A19803567A",
      "UserName": "user",
      "Password": "password",
      "Log": {
        "Enabled": true,
        "PollingInterval": 60,
        "LogAPI": "http://localhost/Nodinite/LogAPI/",
        "LogAgentId": 43,
        "ReplaceRules": [
          {
            "Name": "Fix End Point real id to {id}",
            "ReplaceName": true,
            "ReplaceUri": true,
            "Pattern": "/([R0-9]{4,})$",
            "Group1Value": "{id}"
          }
        ]
      }
    }
  ]
}

Example for versions before 4.3.0.5:

{
  "Environment": "Test",
  "Debug": true,
  "Version": "1.1",
  "CultureInfo": "sv-SE",
  "Folders": [
    {
      "Folder": "C:\\Mule\\logs\\IMLog",
      "IncludeChildFolders": false,
      "Filter": "*.log",
      "ExcludeChildFolders": [
        {
          "Name": "C:\\Temp\\MuleLogs\\IMLog\\NotMe"
        }
      ],
      "Log": {
        "Enabled": true,
        "PollingInterval": 60,
        "LogAgentId": 42
      }
    }
  ],
  "Environments": [
    {
      "EnvironmentName": "Test",
      "EnvironmentId": "1A395ED7-5CC5-4B4A-9A09-87A19803567A",
      "UserName": "user",
      "Password": "password",
      "Log": {
        "Enabled": true,
        "PollingInterval": 60,
        "LogAgentId": 43
      }
    }
  ]
}

Next Step

Install Mule Log Agent
Logging Service